/**
 * Copyright (C) 2018-2020
 * All rights reserved, Designed By www.yixiang.co
 * 注意：
 * 本软件为www.yixiang.co开发研制
 */
package co.yixiang.modules.shop.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.*;
import java.sql.Timestamp;
import java.io.Serializable;

/**
 * @author chajiu
 * @date 2021-04-25
 */
@Data
@TableName("yx_express_plan")
public class ExpressPlan implements Serializable {

    /** 方案id */
    @ApiModelProperty(value = "方案id")
    @TableId
    private Integer id;


    /** 门店id */
    @ApiModelProperty(value = "门店id")
    private Integer storeId;


    /** 方案名称 */
    @ApiModelProperty(value = "方案名称")
    private String name;


    /** 计费方式 0按件 1按重量 2包邮 */
    @ApiModelProperty(value = "计费方式 0按件 1按重量 2包邮")
    private Integer type;


    /** 是否全国统一 0不是 1是 */
    @ApiModelProperty(value = "是否全国统一 0不是 1是")
    private Integer isCountry;


    /** 添加时间 */
    @ApiModelProperty(value = "添加时间")
    @TableField(fill = FieldFill.INSERT)
    private Timestamp submitTime;


    /** 更新时间 */
    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.UPDATE)
    private Timestamp updateTime;


    /** 唯一ID */
    @ApiModelProperty(value = "唯一ID")
    // @TableField(value = "unique_id")
    private String uniqueId;


    public void copy(ExpressPlan source) {
        BeanUtil.copyProperties(source, this, CopyOptions.create().setIgnoreNullValue(true));
    }
}
